<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>模版语法</title>
    <script type="text/javascript" src="../js/vue.js"></script>
</head>
<body>
    <!-- 插值 -->
    <span>Message: {{ msg }}</span>

    <p>Using mustaches: {{ rawHtml }}</p>
    <p>Using v-html directive: <span v-html="rawHtml"></span></p>

    <!-- js表达式使用 -->
    {{ number + 1 }}

    {{ ok ? 'YES' : 'NO' }}

    {{ message.split('').reverse().join('') }}

    <div v-bind:id="'list-' + id"></div>

    <!-- 指令：指令 (Directives) 是带有 v- 前缀的特殊 attribute -->
    <p v-if="seen">现在你看到我了</p>
    <!-- 参数：一些指令能够接收一个“参数”，在指令名称之后以冒号表示 -->
    <a v-bind:href="url">...</a> <!-- 在这里 href 是参数，告知 v-bind 指令将该元素的 href attribute 与表达式 url 的值绑定 -->

    <!-- 动态参数 -->
    <!--
        注意，参数表达式的写法存在一些约束，如之后的“对动态参数表达式的约束”章节所述。
        这里的 attributeName 会被作为一个 JavaScript 表达式进行动态求值，求得的值将会作为最终的参数来使用。
        例如，如果你的 Vue 实例有一个 data property attributeName，其值为 "href"，那么这个绑定将等价于 v-bind:href
        attributeName为 null 值可以被显性地用于移除绑定
    -->
    <a v-bind:[attributeName]="url"> ... </a> 

    <!-- v-bind 缩写 -->
    <!-- 完整语法 -->
    <a v-bind:href="url">...</a>
    <!-- 缩写 -->
    <a :href="url">...</a>
    <!-- 动态参数的缩写 (2.6.0+) -->
    <a :[key]="url"> ... </a>

    <!-- v-on 缩写 -->
    <!-- 完整语法 -->
    <a v-on:click="doSomething">...</a>
    <!-- 缩写 -->
    <a @click="doSomething">...</a>
    <!-- 动态参数的缩写 (2.6.0+) -->
    <a @[event]="doSomething"> ... </a>

    
</body>
    <script>
        new Vue({
            data: {
                msg: 'Hello Vue!'
            }
        })
    </script>
</html>